// 歌曲信息模型
export class Song {
  hash: string = '';        // 歌曲哈希值（用于获取播放链接）
  name: string = '';        // 歌曲名称
  singer: string = '';      // 歌手名
  album: string = '';       // 专辑名
  duration: number = 0;     // 时长（秒）
  albumId: string = '';     // 专辑ID
  playUrl: string = '';     // 播放URL
  coverUrl: string = '';    // 封面URL
}

// 歌单模型
export class Playlist {
  id: string = '';          // 歌单ID
  name: string = '';        // 歌单名称
  coverUrl: string = '';    // 封面URL
  songList: Song[] = [];    // 歌曲列表
}

// 排行榜模型
export class Rank {
  id: string = '';          // 排行榜ID
  name: string = '';        // 排行榜名称
  coverUrl: string = '';    // 封面URL
  songList: Song[] = [];    // 歌曲列表
}

// 全局播放状态模型
export class PlayState {
  currentIndex: number = 0; // 当前播放索引
  songList: Song[] = [];    // 当前播放列表
  isPlaying: boolean = false; // 播放状态
  currentTime: number = 0;  // 当前播放时间（秒）
  duration: number = 0;     // 总时长（秒）
}

// 用户收藏信息
export class UserFavorite {
  songIds: string[] = [];   // 收藏的歌曲ID
  playlistIds: string[] = []; // 收藏的歌单ID
  rankIds: string[] = [];   // 收藏的排行榜ID
}